﻿using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Text;
using System.Data;

using YouHP.IDAL;
using YouHP.Model;

namespace YouHP.IDAL
{
    public interface IPatientIndicator
    {
        #region 实验室指标记录
        // 添加单条的实验室指标历史记录
        bool AddIndicatorHistory(IndicatorHistoryInfo shInfo);

        // 取得病人的某种实验室指标的当前程度
        IndicatorHistoryInfo GetCurrentIndicator(int prId, int indicatorId);

        // 根据历史Id获得实验室指标历史记录信息
        IndicatorHistoryInfo GetIndicatorHistory(int prId, int historyId);

        //判断历史记录表中是否已存在病人指定时间对应的记录
        bool CheckIndicatorHistory(int prId, int indicatorId, DateTime recordDate);

        // 修改单条的实验室指标历史记录
        bool UpdateIndicatorHistory(IndicatorHistoryInfo ihInfo);

        // 根据历史Id删除实验室指标历史记录信息
        bool DeleteIndicatorHistory(int prId, int historyId);

        // 批量的实验室指标历史记录提交
        bool AddIndicatorSurvey(List<IndicatorHistoryInfo> ihList);

        // 获得批量的症状历史记录
        List<IndicatorHistoryInfo> GetIndicatorSurvey(int prId, int surveyId);

        // 批量的实验室指标历史记录修改
        bool UpdateIndicatorSurvey(int surveyId, List<IndicatorHistoryInfo> ihList);

        // 根据SurveyId删除实验室指标历史记录信息
        bool DeleteIndicatorSurvey(int prId, int surveyId);

        // 取得病人的当前实验室指标列表
        List<IndicatorHistoryInfo> GetCurrentIndicatorList(int prId);

        // 取得病人针对某种实验室指标的实验室指标记录历史
        List<IndicatorHistoryInfo> GetIndicatorHistoryList(int prId, int indicatorId, int pageSize, int pageIndex, out int count);
        #endregion    
    }
}
